﻿$(document).ready(function () {
    $('#btnSubmit').click(function (e) {
        e.preventDefault();
        validarForm();
    });
    $('#txtEmail').on('keyup blur', function () {
        mostrarValidacionEmail(validarEmail());
    });
    $('#txtTelefono').on('keyup blur', function () {
        mostrarValidacionTelefono(validarTelefono());
    });
    $('#txtNombre').on('keyup blur', function () {
        mostrarValidacionNombre(validarNombre());
    });
    $('#txtApellido').on('keyup blur', function () {
        mostrarValidacionApellido(validarApellido());
    });
    $('#txtDni').on('keyup blur', function () {
        mostrarValidacionDni(validarDni());
    });
});

function validarForm() {
    var emailValido = validarEmail();
    var telefonoValido = validarTelefono();
    var nombreValido = validarNombre();
    var apellidoValido = validarApellido();
    var dniValido = validarDni();

    if (!emailValido || !telefonoValido || !nombreValido || !apellidoValido || !dniValido) {
        mostrarValidacionEmail(emailValido);
        mostrarValidacionTelefono(telefonoValido);
        mostrarValidacionNombre(nombreValido);
        mostrarValidacionApellido(apellidoValido);
        mostrarValidacionDni(dniValido);
        $('#error').show();
    }
    else {
        $('#btnSubmit').unbind("click");
        $('#btnSubmit').click();
    }
}

function validarEmail() {
    var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
    var email = $('#txtEmail').val();
    return reg.test(email);
}

function validarTelefono() {
    var telefono = $('#txtTelefono').val();
    return telefono.length > 0;
}

function validarNombre() {
    var nombre = $('#txtNombre').val();
    return nombre.length > 0;
}

function validarApellido() {
    var apellido = $('#txtApellido').val();
    return apellido.length > 0;
}

function validarDni() {
    var dni = $('#txtDni').val();
    return (dni.length > 0 && !isNaN(dni));
}

function mostrarValidacionEmail(cond) {
    if (!cond) {
        $('#emailHelpBlock').text('El formato de email no es valido');
        $('#emailHelpBlock').show();
        $('#emailDiv').addClass('has-error');
    }
    else {
        $('#emailHelpBlock').hide();
        $('#emailDiv').removeClass('has-error');
    }
}

function mostrarValidacionTelefono(cond) {
    if (!cond) {
        $('#telefonoHelpBlock').text('Por favor complete este campo');
        $('#telefonoHelpBlock').show();
        $('#telefonoDiv').addClass('has-error');
    }
    else {
        $('#telefonoHelpBlock').hide();
        $('#telefonoDiv').removeClass('has-error');
    }
}


function mostrarValidacionNombre(cond) {
    if (!cond) {
        $('#nombreHelpBlock').text('Por favor complete este campo');
        $('#nombreHelpBlock').show();
        $('#nombreDiv').addClass('has-error');
    }
    else {
        $('#nombreHelpBlock').hide();
        $('#nombreDiv').removeClass('has-error');
    }
}

function mostrarValidacionApellido(cond) {
    if (!cond) {
        $('#apellidoHelpBlock').text('Por favor complete este campo');
        $('#apellidoHelpBlock').show();
        $('#apellidoDiv').addClass('has-error');
    }
    else {
        $('#apellidoHelpBlock').hide();
        $('#apellidoDiv').removeClass('has-error');
    }
}

function mostrarValidacionDni(cond) {
    if (!cond) {
        $('#dniHelpBlock').text('El dni no es valido. Asegurese de que sean solo numeros.');
        $('#dniHelpBlock').show();
        $('#dniDiv').addClass('has-error');
    }
    else {
        $('#dniHelpBlock').hide();
        $('#dniDiv').removeClass('has-error');
    }
}